package com.withyou.design_pattern.creative_design_pattern.singleton_design_pattern;
/**
 * 分类：
 *      创建型设计模式：用户创建单例对象,运行时环境对于目标类只会产生一个对象
 * 特点：
 *      饿汉设计模式：提前创建对象
 *      饿汉模式是线程安全的，因为实例对象在类加载过程中就会被创建，在getInstance()方法中只是直接返回对象引用。
 *      之所以被称为“饿汉”，是因为这种模式创建实例对象比较“急”，真的是饿坏了……
 * 优缺点：
 *      好处：简单明了，无需关注线程安全问题。
 *      缺点：如果在一个大环境下使用了过多的饿汉单例，则会生产出过多的实例对象，无论你是否要使用他们。
 *
 * HungryMan_Design_Pattern：饿汉设计模式
 * 实现：
 *      1、私有构造方法，避免外部创建 private HungryMan_Design_Pattern(){}
 *      2、单例对象 静态私有 提前构造好
 * 原理：
 *      1、对象创建时机：静态属性会在类加载直接初始化对象
 *      2、排除外部创建时机：构造方法私有化，外部无法创建其他对象
 */
public class HungryMan_Design_Pattern {

    private static HungryMan_Design_Pattern singleton = new HungryMan_Design_Pattern();

    private HungryMan_Design_Pattern(){}

    public static HungryMan_Design_Pattern getInstance(){ return singleton; }

}
